Mô hình thực thi CUDA biến máy tính của bạn thành một hệ thống đồng nhất hiệu suất cao. Hãy tưởng tượng một Đạo diễn lớn (Host/CPU) và một Đội quân hàng nghìn (Device/GPU). Đạo diễn xử lý các logic phức tạp và ra quyết định, trong khi đội quân thực hiện các tác vụ khổng lồ và lặp lại cùng lúc.
1. Sự chia tách kiến trúc
Thiết bị Host là một bộ vi xử lý tối ưu hóa độ trễ, được thiết kế cho luồng điều khiển phức tạp và các tác vụ tuần tự. Ngược lại, thiết bị Device là một GPU tối ưu hóa băng thông, chứa hàng ngàn nhân đơn giản được thiết kế để thực thi cùng một lệnh trên dữ liệu quy mô lớn cùng lúc.
2. Nhịp điệu thực thi
Chương trình CUDA hoạt động như một chuỗi các giai đoạn. Thực thi bắt đầu trên Host cho "mã tuần tự." Khi chương trình gặp "Kernel song song," nó khởi chạy một Mạng lưới các luồng lên thiết bị Device. Kiểm soát quay trở lại Host sau khi thiết bị hoàn thành khối lượng công việc khổng lồ của mình.
3. Chuyên biệt hóa hiệu suất
Mô hình tận dụng thế mạnh của cả hai: CPU quản lý tài nguyên hệ thống và nhánh phức tạp, trong khi GPU thực thi SPMD (Chương trình duy nhất, Dữ liệu đa dạng) logic để xử lý các phần tử dữ liệu song song.